home *** CD-ROM | disk | FTP | other *** search
/ SuperHack / SuperHack CD.bin / CODING / SOUND / CRYS270.ZIP / CRYSTAL.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1995-06-26  |  2.8 KB  |  120 lines

  1. {**************************************************************************}
  2. {*   Cette unité permet d'utiliser facilement mes routines pour intégrer  *}
  3. {*   de la musique dans vos propres programme.                            *}
  4. {*                                                                        *}
  5. {* Programmé par Sébastien Granjoux                                       *}
  6. {* Commencé le 01/06/93                                                   *}
  7. {* Modification le 10/05/95                                               *}
  8.  
  9. UNIT CRYSTAL;
  10.  
  11. INTERFACE
  12.  
  13. FUNCTION FLOADMOD(filename:POINTER):INTEGER;
  14. FUNCTION OLOADMOD(position:LONGINT):INTEGER;
  15. FUNCTION MLOADMOD(position:POINTER):INTEGER;
  16. PROCEDURE UNLOADMOD;
  17. FUNCTION SETMOD(frequence,device,port:WORD;irq,dma:BYTE):INTEGER;
  18. PROCEDURE MAKEMOD;
  19. PROCEDURE STARTMOD;
  20. PROCEDURE STOPMOD;
  21. FUNCTION DETECTSND(VAR device,port:WORD;VAR irq,dma:BYTE):INTEGER;
  22. PROCEDURE CHANGEVOL(newvol:BYTE);
  23. PROCEDURE SETMODPOS(newpos:WORD);
  24. FUNCTION  GETMODPOS:WORD;
  25. FUNCTION  USEGUS:INTEGER;
  26. FUNCTION  USESPK:INTEGER;
  27. FUNCTION  USEDAC:INTEGER;
  28. FUNCTION  USEADL:INTEGER;
  29. FUNCTION  USESB:INTEGER;
  30. FUNCTION  USESP:INTEGER;
  31.  
  32. CONST
  33.   THE_BEST     =0;
  34.   PC_SPEAKER   =1;
  35.   DAC_ON_LPT   =2;
  36.   SOUNDBLASTER =3;
  37.   GUS          =4;
  38.   SOUNDPRO     =5;
  39.   ADLIB        =6;
  40.   NO_DEVICE    =7;
  41.  
  42. IMPLEMENTATION
  43.  
  44. USES CRYSINT;
  45.  
  46. {$L LOADMOD.OBJ}
  47. {$L CRYSLOAD.OBJ}
  48. {$L CRYSFILE.OBJ}
  49. {$L CRYSOVL.OBJ}
  50. {$L CRYSMEM.OBJ}
  51. {$L FLOADMOD.OBJ}
  52. {$L OLOADMOD.OBJ}
  53. {$L MLOADMOD.OBJ}
  54.  
  55. FUNCTION FLOADMOD(filename:POINTER):INTEGER;EXTERNAL;
  56. FUNCTION OLOADMOD(position:LONGINT):INTEGER;EXTERNAL;
  57. FUNCTION MLOADMOD(position:POINTER):INTEGER;EXTERNAL;
  58. PROCEDURE UNLOADMOD;EXTERNAL;
  59. PROCEDURE FREEMEM;EXTERNAL;
  60. PROCEDURE CLOSE;EXTERNAL;
  61. PROCEDURE SEEK;EXTERNAL;
  62. PROCEDURE READ;EXTERNAL;
  63. FUNCTION SETMOD(frequence,device,port:WORD;irq,dma:BYTE):INTEGER;
  64. BEGIN
  65.   SETMOD:=CRYSINT.SETMOD(frequence,device,port,irq,dma);
  66. END;
  67. PROCEDURE MAKEMOD;
  68. BEGIN
  69.   CRYSINT.MAKEMOD;
  70. END;
  71. PROCEDURE STARTMOD;
  72. BEGIN
  73.   CRYSINT.STARTMOD;
  74. END;
  75. PROCEDURE STOPMOD;
  76. BEGIN
  77.   CRYSINT.STOPMOD;
  78. END;
  79. FUNCTION DETECTSND(VAR device,port:WORD;VAR irq,dma:BYTE):INTEGER;
  80. BEGIN
  81.   DETECTSND:=CRYSINT.DETECTSND(device,port,irq,dma);
  82. END;
  83. PROCEDURE CHANGEVOL(newvol:BYTE);
  84. BEGIN
  85.   CRYSINT.CHANGEVOL(newvol);
  86. END;
  87. PROCEDURE SETMODPOS(newpos:WORD);
  88. BEGIN
  89.   CRYSINT.SETMODPOS(newpos);
  90. END;
  91. FUNCTION GETMODPOS:WORD;
  92. BEGIN
  93.   GETMODPOS:=CRYSINT.GETMODPOS;
  94. END;
  95. FUNCTION USEGUS:INTEGER;
  96. BEGIN
  97.   USEGUS:=CRYSINT.USEGUS;
  98. END;
  99. FUNCTION USESPK:INTEGER;
  100. BEGIN
  101.   USESPK:=CRYSINT.USESPK;
  102. END;
  103. FUNCTION USEDAC:INTEGER;
  104. BEGIN
  105.   USEDAC:=CRYSINT.USEDAC;
  106. END;
  107. FUNCTION USEADL:INTEGER;
  108. BEGIN
  109.   USEADL:=CRYSINT.USEADL;
  110. END;
  111. FUNCTION USESB:INTEGER;
  112. BEGIN
  113.   USESB:=CRYSINT.USESB;
  114. END;
  115. FUNCTION USESP:INTEGER;
  116. BEGIN
  117.   USESP:=CRYSINT.USESP;
  118. END;
  119. END.
  120.